clear all

**Save to update later
global BS_fold_old = "$BS_fold"
global working_old = "$working"
global tempfold_old = "$tempfold"
global clean_old = "$clean"

global spec = "new_klme"
local spec = "$spec"

global tempfold = "$BS_fold/local2/" // **UPDATING TEMPFOLD TO BE A LOCAL FOLDER FOR EACH BOOTSTRAP;
global workingnew = "$BS_fold/local2/inputs/"
global BSfoldnew = "$BS_fold/local2/final/"
global cleannew = "$BS_fold/local2/inputs/"

use "$working/prowess_wits_estimation_qonly_klme.dta", clear
save "$workingnew/prowess_wits_estimation_qonly_klme.dta", replace

use "$working/first_last_years.dta", clear
save "$workingnew/first_last_years.dta", replace

use "$working/wholesale_priceindex.dta", clear
save "$workingnew/wholesale_priceindex.dta", replace

global BS_fold = "$BSfoldnew" //  **UPDATING BS_fold TO BE A LOCAL FOLDER FOR EACH BOOTSTRAP;
global working = "$workingnew" //  **UPDATING working TO BE A LOCAL FOLDER FOR EACH BOOTSTRAP;

**Point Estimates
**CHOSE INSTRUMENTS + SPEC
global Zbase = "lag_l lag_m lag_e lag_D_ln_micro_inv lag_D_micro_inv lag_I_sq_micro_inv lag_I_sq_micro_inv_D lag_I_sq_lm lag_I_sq_le lag_I_sq_me lag_I_sq_micro_inv_km lag_I_sq_micro_inv_D_km lag_I_sq_micro_inv_ke lag_I_sq_micro_inv_D_ke"
global ZnonX_base = "lag_D_ln_micro_inv lag_D_micro_inv lag_I_sq_micro_inv lag_I_sq_micro_inv_D lag_I_sq_micro_inv_km lag_I_sq_micro_inv_D_km lag_I_sq_micro_inv_ke lag_I_sq_micro_inv_D_ke"
global INS =  "dm_lag_q_m dm_lag_l dm_lag_m dm_lag_e dm_lag_D_ln_micro_inv dm_lag_D_micro_inv dm_lag_I_sq_micro_inv dm_lag_I_sq_micro_inv_D dm_lag_I_sq_lm dm_lag_I_sq_le dm_lag_I_sq_me dm_lag_I_sq_micro_inv_km dm_lag_I_sq_micro_inv_D_km dm_lag_I_sq_micro_inv_ke dm_lag_I_sq_micro_inv_D_ke"
global spec = "new_klme"

********************POINT ESTIMATES********************************************
do "$code/estimation/baseEst/02_prod_est_qonly_klme_opf.do"

global saveoutputs = "$working"
do "$code/estimation/baseEst/03_D_est_TFPQIV_Qklme.do"


do "$code/estimation/flexible/data_work_Q_klme_TFPQIV.do" 
global datafiles = "decomposition_SS_ProdQ_new_klme_TFPQIV" 
do "$code/estimation/flexible/crosscheck.do"

do "$code/estimation/flexible/data_work_Q_klme_rshare_TFPQIV.do" 
global datafiles = "decomposition_SS_ProdQ_new_klme_TFPQIV_rshare" 
do "$code/estimation/flexible/crosscheck.do"

global datafilesfirm= "firm_SS_ProdQ_new_klme_TFPQIV_allobs"
global datafiles = "decomposition_SS_ProdQ_new_klme_TFPQIV" 
global samplename = "ProdQ"
do "$code/estimation/flexible/reg_shell_short.do" 
do "$code/estimation/flexible/reg_shell_mp.do" 
do "$code/estimation/flexible/reg_shell_firm.do" 

global datafiles = "decomposition_SS_ProdQ_new_klme_TFPQIV_rshare" 
global samplename = "ProdQ"
do "$code/estimation/flexible/reg_shell_short.do" 
do "$code/estimation/flexible/reg_shell_mp.do" 
********************POINT ESTIMATES********************************************


***GRAB BS SAMPLES
do "$code/estimation/grabBS/02_Q_klme_grabBS.do"
*/
***RUN BS
local bsamplesize = 100

forvalues bs = 1(1)`bsamplesize' {
	*******Decomposition Sample*******
	global bs = `bs'
	
	clear 
	use "$BS_fold_old/record/Qklme/base/bssample_`bs'"
	
	save "$tempfold/bssample1", replace
	*Sample for second step (firm year)
	bysort co_code1 bs_co_code1 year: generate count_thing = _n
	keep if count_thing==1
	keep co_code1 bs_co_code1 year
	save "$tempfold/bssample2", replace


	do "$code/estimation/flexible/prod_est_qonly_klme_opf_bs.do" 
	
	global saveoutputs = "$tempfold"
	do "$code/estimation/flexible/D_est_TFPQIV_Qklme_bs.do"
	
	
	global saveoutputs = "$tempfold"
	do "$code/estimation/flexible/data_work_Q_klme_TFPQIV.do"
	global datafiles = "decomposition_SS_ProdQ_new_klme_TFPQIV" 
	do "$code/estimation/flexible/reg_shell_short_bs.do" 
	do "$code/estimation/flexible/reg_shell_mp_bs.do" 
	
	global saveoutputs = "$tempfold"
	do "$code/estimation/flexible/data_work_Q_klme_rshare_TFPQIV.do"
	global datafiles = "decomposition_SS_ProdQ_new_klme_TFPQIV_rshare" 
	do "$code/estimation/flexible/reg_shell_short_bs.do" 
	do "$code/estimation/flexible/reg_shell_mp_bs.do" 
	

	*******Full Sample*******
	clear 
	use "$BS_fold_old/record/Qklme/allobs/bssample_`bs'"
	
	save "$tempfold/bssample1", replace
	*Sample for second step (firm year)
	bysort co_code1 bs_co_code1 year: generate count_thing = _n
	keep if count_thing==1
	keep co_code1 bs_co_code1 year
	save "$tempfold/bssample2", replace

	do "$code/estimation/flexible/prod_est_qonly_klme_opf_bs.do" 
	
	global saveoutputs = "$tempfold"
	do "$code/estimation/flexible/D_est_TFPQIV_Qklme_bs.do"

	global saveoutputs = "$tempfold"
	do "$code/estimation/flexible/data_work_Q_klme_TFPQIV.do"

	global datafilesfirm = "firm_SS_ProdQ_new_klme_TFPQIV_allobs" 
	do "$code/estimation/flexible/reg_shell_firm_bs.do"
	
}

global BS_fold = "$BS_fold_old" //  **UPDATING BS_fold TO BE THE MAIN PATH AGAIN;
global working = "$working_old" //  **UPDATING working TO BE THE MAIN PATH AGAIN;
global tempfold = "$tempfold_old"
global clean = "$clean_old"
